package com.hf.wujian.model.imp;

import com.hf.wujian.model.AGame;
import com.hf.wujian.model.GameRole;
import io.netty.channel.ChannelHandlerContext;
import java.util.List;
import java.util.concurrent.locks.ReadWriteLock;
import java.util.concurrent.locks.ReentrantReadWriteLock;

/**
 * 游戏规则实现类
 *
 * @author hf
 * @date 2018/11/27
 * @version 1.0
 *
 */
public class BSHAGame implements AGame {

    /**
     * 游戏所有角色
     */
    private List<GameRole> gameRoles;

    /**
     * 游戏轮次
     */
    private volatile int roundCount = 0;
    /**
     * 游戏回合
     * 游戏回合最大次数为参与人数
     * 到达最大次数后游戏将增加一个轮次
     * 并将游戏回合数清零，然后从一号位玩家开始新轮次
     */
    private volatile int time = 0;

    /**
     * 游戏读写锁
     */
    private ReadWriteLock gameRwlock = new ReentrantReadWriteLock(true);

    public BSHAGame(List<GameRole> gameRoles){
        this.gameRoles = gameRoles;
    }

    /**
     * 游戏结束方法
     */
    @Override
    public void gameOver() {

    }
}
